# @Time    :2025/3/31 8:32
"""
题目 2:动态添加方法
定义一个 Circle 类，该类有一个 radius 属性。在类外定义一个函数 calculate area，
功能是计算圆的面积(面积公式:(S=πr^2)，然后将这个函数动态地添加为 Circle 类的一个对象的方法，
并调用该方法计算半径为 5的圆的面积。(提示:可使用 types.MethodType)
"""
import math
import types


class Circle:
    def __init__(self, radius):
        # 半径
        self.radius = radius


def alculate_area(self):
    return round(math.pi * self.radius ** 2, 2)


circle = Circle(5)
circle.alculate_area = types.MethodType(alculate_area, circle)

area = circle.alculate_area()
print(f"半径为5的圆的面积是: {area}")
# 或者
print(circle.alculate_area())
